package main.java.sword2offer;

/**
 * <p>
 * 0~n-1中缺失的数字
 * </p>
 * 一个长度为n-1的递增排序数组中的所有数字都是唯一的，并且每个数字都在范围0～n-1之内。在范围0～n-1内的n个数字中有且只有一个数字不在该数组中，请找出这个数字
 *
 * @author LovelyBigDuck
 * @date 2022/3/16 23:20
 */
public class S_53_2 {
    // 还是二分法
    public int missingNumber(int[] nums) {
        int l=0,r=nums.length-1;
        while(l<=r){
            int mid=l+r>>1;
            if(nums[mid]!=mid){
                r=mid;
            }
            else{
                l=mid+1;
            }
        }
        return l;
    }
}
